<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BConearRestraint</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BConearRestraint">
			<h1>BConearRestraint</h1>
			<p>继承自<a href="BRestraint.html">BRestraint</a></p>
			<p id="resume"><a href="#desc">详细</a></p>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right"></td><td><a href="#BConearRestraint()">BConearRestraint</a>();</td></tr>
				<tr><td align="right"></td><td><a href="#BConearRestraint(BBody*, const BVector&)">BConearRestraint</a>(BBody* bodyA, const BVector& pivotA);</td></tr>
				<tr><td align="right"></td><td><a href="#BConearRestraint(BBody*, BBody*)">BConearRestraint</a>(BBody* bodyA, BBody* bodyB);</td></tr>
				<tr><td align="right"></td><td><a href="#BConearRestraint(BBody*, const BVector&, BBody*, const BVector&)">BConearRestraint</a>(BBody* bodyA, const BVector& pivotA, BBody* bodyB, const BVector& pivotB);</td></tr>
				<tr><td align="right"></td><td><a href="#~BConearRestraint()">~BConearRestraint</a>();</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#copy(const BRestraint*)">copy</a>(const BRestraint* other);</td></tr>
				<tr><td align="right">virtual BRestraint* </td><td><a href="#clone()">clone</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setAxisA(const BVector&)">setAxisA</a>(const BVector& axisA);</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#axisA()">axisA</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setAxisB(const BVector&)">setAxisB</a>(const BVector& axisB);</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#axisB()">axisB</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setLimit(int, BReal)">setLimit</a>(int limitIndex, BReal limitValue);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#getLimit(int)">getLimit</a>(int limitIndex) const;</td></tr>
				<tr><td align="right">const BMatrix& </td><td><a href="#getAFrame()">getAFrame</a>() const;</td></tr>
				<tr><td align="right">const BMatrix& </td><td><a href="#getBFrame()">getBFrame</a>() const;</td></tr>
				<tr><td align="right">int </td><td><a href="#getSolveTwistLimit()">getSolveTwistLimit</a>();</td></tr>
				<tr><td align="right">int </td><td><a href="#getSolveSwingLimit()">getSolveSwingLimit</a>();</td></tr>
				<tr><td align="right">BReal </td><td><a href="#getTwistLimitSign()">getTwistLimitSign</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#setTwistSpan(BReal)">setTwistSpan</a>(BReal twistSpan);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#twistSpan()">twistSpan</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setSwingSpan1(BReal)">setSwingSpan1</a>(BReal twistSpan);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#swingSpan1()">swingSpan1</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setSwingSpan2(BReal)">setSwingSpan2</a>(BReal twistSpan);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#swingSpan2()">swingSpan2</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setLimitSoftness(BReal)">setLimitSoftness</a>(BReal limitSoftness);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#limitSoftness()">limitSoftness</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setBiasFactor(BReal)">setBiasFactor</a>(BReal biasFactor) const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#biasFactor()">biasFactor</a>() const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#getTwistAngle()">getTwistAngle</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#isPastSwingLimit()">isPastSwingLimit</a>();</td></tr>
				<tr><td align="right">void </td><td><a href="#setDamping(BReal)">setDamping</a>(BReal damping);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#damping()">damping</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#enableMotor(bool)">enableMotor</a>(bool b);</td></tr>
				<tr><td align="right">bool </td><td><a href="#isMotorEnabled()">isMotorEnabled</a>() const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#getMaxMotorImpulse()">getMaxMotorImpulse</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#isMaxMotorImpulseNormalized()">isMaxMotorImpulseNormalized</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxMotorImpulse(BReal)">setMaxMotorImpulse</a>(BReal maxMotorImpulse);</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxMotorImpulseNormalized(BReal)">setMaxMotorImpulseNormalized</a>(BReal maxMotorImpulse);</td></tr>
				<tr><td align="right">BVector </td><td><a href="#GetPointForAngle(BReal, BReal)">GetPointForAngle</a>(BReal fAngleInRadians, BReal fLength) const;</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#horAxis()">horAxis</a>() const;</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#verAxis()">verAxis</a>() const;</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#coneAxis()">coneAxis</a>() const;</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#swingAxis()">swingAxis</a>() const;</td></tr>
				<tr><td align="right">const BVector& </td><td><a href="#twistAxis()">twistAxis</a>() const;</td></tr>
				<tr><td align="right">virtual int </td><td><a href="#solverSize()">solverSize</a>();</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#soverItems(BSolverItem*, BReal)">soverItems</a>(BSolverItem* solverItems, BReal stepTime);</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="BConearRestraint()">
				<h3>BConearRestraint();</h3>
			</div>
			<div id="BConearRestraint(BBody*, const BVector&)">
				<h3>BConearRestraint(BBody* bodyA, const BVector&amp; pivotA);</h3>
			</div>
			<div id="BConearRestraint(BBody*, BBody*)">
				<h3>BConearRestraint(BBody* bodyA, BBody* bodyB);</h3>
			</div>
			<div id="BConearRestraint(BBody*, const BVector&, BBody*, const BVector&)">
				<h3>BConearRestraint(BBody* bodyA, const BVector&amp; pivotA, BBody* bodyB, const BVector&amp; pivotB);</h3>
			</div>
			<div id="~BConearRestraint()">
				<h3>~BConearRestraint();</h3>
			</div>
			<div id="copy(const BRestraint*)">
				<h3>virtual void copy(const BRestraint* other);</h3>
			</div>
			<div id="clone()">
				<h3>virtual BRestraint* clone() const;</h3>
			</div>
			<div id="setAxisA(const BVector&)">
				<h3>void setAxisA(const BVector&amp; axisA);</h3>
			</div>
			<div id="axisA()">
				<h3>const BVector&amp; axisA() const;</h3>
			</div>
			<div id="setAxisB(const BVector&)">
				<h3>void setAxisB(const BVector&amp; axisB);</h3>
			</div>
			<div id="axisB()">
				<h3>const BVector&amp; axisB() const;</h3>
			</div>
			<div id="setLimit(int, BReal)">
				<h3>void setLimit(int limitIndex, BReal limitValue);</h3>
			</div>
			<div id="getLimit(int)">
				<h3>BReal getLimit(int limitIndex) const;</h3>
			</div>
			<div id="getAFrame()">
				<h3>const BMatrix&amp; getAFrame() const;</h3>
			</div>
			<div id="getBFrame()">
				<h3>const BMatrix&amp; getBFrame() const;</h3>
			</div>
			<div id="getSolveTwistLimit()">
				<h3>int getSolveTwistLimit();</h3>
			</div>
			<div id="getSolveSwingLimit()">
				<h3>int getSolveSwingLimit();</h3>
			</div>
			<div id="getTwistLimitSign()">
				<h3>BReal getTwistLimitSign();</h3>
			</div>
			<div id="setTwistSpan(BReal)">
				<h3>void setTwistSpan(BReal twistSpan);</h3>
			</div>
			<div id="twistSpan()">
				<h3>BReal twistSpan() const;</h3>
			</div>
			<div id="setSwingSpan1(BReal)">
				<h3>void setSwingSpan1(BReal twistSpan);</h3>
			</div>
			<div id="swingSpan1()">
				<h3>BReal swingSpan1() const;</h3>
			</div>
			<div id="setSwingSpan2(BReal)">
				<h3>void setSwingSpan2(BReal twistSpan);</h3>
			</div>
			<div id="swingSpan2()">
				<h3>BReal swingSpan2() const;</h3>
			</div>
			<div id="setLimitSoftness(BReal)">
				<h3>void setLimitSoftness(BReal limitSoftness);</h3>
			</div>
			<div id="limitSoftness()">
				<h3>BReal limitSoftness() const;</h3>
			</div>
			<div id="setBiasFactor(BReal)">
				<h3>void setBiasFactor(BReal biasFactor) const;</h3>
			</div>
			<div id="biasFactor()">
				<h3>BReal biasFactor() const;</h3>
			</div>
			<div id="getTwistAngle()">
				<h3>BReal getTwistAngle() const;</h3>
			</div>
			<div id="isPastSwingLimit()">
				<h3>bool isPastSwingLimit();</h3>
			</div>
			<div id="setDamping(BReal)">
				<h3>void setDamping(BReal damping);</h3>
			</div>
			<div id="damping()">
				<h3>BReal damping() const;</h3>
			</div>
			<div id="enableMotor(bool)">
				<h3>void enableMotor(bool b);</h3>
			</div>
			<div id="isMotorEnabled()">
				<h3>bool isMotorEnabled() const;</h3>
			</div>
			<div id="getMaxMotorImpulse()">
				<h3>BReal getMaxMotorImpulse() const;</h3>
			</div>
			<div id="isMaxMotorImpulseNormalized()">
				<h3>bool isMaxMotorImpulseNormalized() const;</h3>
			</div>
			<div id="setMaxMotorImpulse(BReal)">
				<h3>void setMaxMotorImpulse(BReal maxMotorImpulse);</h3>
			</div>
			<div id="setMaxMotorImpulseNormalized(BReal)">
				<h3>void setMaxMotorImpulseNormalized(BReal maxMotorImpulse);</h3>
			</div>
			<div id="GetPointForAngle(BReal, BReal)">
				<h3>BVector GetPointForAngle(BReal fAngleInRadians, BReal fLength) const;</h3>
			</div>
			<div id="horAxis()">
				<h3>const BVector&amp; horAxis() const;</h3>
			</div>
			<div id="verAxis()">
				<h3>const BVector&amp; verAxis() const;</h3>
			</div>
			<div id="coneAxis()">
				<h3>const BVector&amp; coneAxis() const;</h3>
			</div>
			<div id="swingAxis()">
				<h3>const BVector&amp; swingAxis() const;</h3>
			</div>
			<div id="twistAxis()">
				<h3>const BVector&amp; twistAxis() const;</h3>
			</div>
			<div id="solverSize()">
				<h3>virtual int solverSize();</h3>
			</div>
			<div id="soverItems(BSolverItem*, BReal)">
				<h3>virtual void soverItems(BSolverItem* solverItems, BReal stepTime);</h3>
			</div>
		</div>
	</body>
</html>